1. Field of the Invention
The present invention relates to a method for reducing an address such as an Ethernet-type address, independently from the type (source or destination) of this address.
2. Discussion of the Related Art
In a communication system using the Ethernet protocol, several electronic devices such as computers can exchange data via a switching equipment such as an Ethernet switch or a “router”.
FIG. 1 schematically shows a communication system in which several devices A, B, C, and D are connected to form a local area network (LAN). Device A (typically a personal computer or a workstation) comprises an Ethernet interface 2A connected by a connection 4A to an Ethernet interface 6A of an Ethernet switching equipment (8). Device B comprises an Ethernet interface 2B also connected to Ethernet interface 6A of switching equipment 8. Device C comprises an Ethernet interface 2C connected to an Ethernet interface 6C of equipment 8 via a connection 4C. Similarly, an Ethernet interface 2D of device D is connected to an Ethernet interface 6D of equipment 8 via a connection 4D. Switching equipment 8 may be connected to a global network by an access not shown.
Devices A, B, C, and D may, provided to use the VLAN protocol, form virtual fields distinct from one another.
According to the Ethernet protocol, each device can be identified by an Ethernet address, called a MAC address.
FIG. 2 schematically shows the format of a MAC address. A MAC address is comprised of 48 bits. The first two bits, IG and UL, respectively indicate whether the address is an individual address or a group address and whether the address administration is local or global. The next 22 bits identify the manufacturer of the device to which the address is assigned, and the last 24 bits correspond to a serial number associated with the device.
The devices connected to the switching equipment communicate by exchanging data in data packets.
FIG. 3 shows the format of a data packet (referenced at the medium level) in accordance with the Ethernet protocol. The packet structure includes the following fields:                SYNC, comprising synchronization words;        PREAMBLE (8 bits), the preamble indicating the beginning of the data packet;        AD-D (48 bits), the destination address which is the MAC address of the device for which the data are intended;        AD-S (48 bits), source address AD-S which is the MAC address of the device sending the packet; and        when the packet is of VLAN type:                    VLAN-TAG (16 bits), an optional field indicating that the corresponding packet conforms to the VLAN standard;            PR (3 bits) indicating, when the packet is of VLAN type, the priority level of the data packet and a field;            CFI (1 bit) (Canonical Field Information) specifying, when the packet is of VLAN type, whether the packet stands the source routing mode; and                        VID (12 bits) when the packet is of VLAN type, indicating the number of the virtual field associated with the packet.        
Only those elements constitutive of the packet which are necessary to the understanding of the present invention are referenced in this document.
It is considered, as an example, that device A sends a data packet to device C. When switching equipment 8 receives the data packet, equipment 8 searches the contexts associated with:                information couple AD-D (in this case, the address of equipment C) and VID (that of the packet).        information couple AD-S (in this case, the address of equipment A) and VID (that of the packet).        
Note: if the packet received by equipment 8 has an invalid VID or if the packet is not of VLAN type, equipment 8 assigns a predetermined value to identifier VID.
The context data associated with the MAC addresses of the source and destination devices and with address VID each comprise information enabling processing of the data packet. For example, this information may indicate that device A is not allowed to provide data to device C over virtual address network VID. If allowed by the context data associated with the source and destination devices and with address VID of the data packet, the data packet is transmitted to device C by switching equipment 8.
In practice, a communication system is provided to operate with a maximum number of devices. Equipment 8 can store each possible MAC/VID address couple of the system in a content-addressable memory (CAM). This CAM memory also stores for each MAC/VID couple a connection identifier (or index) which will be used to extract the associated connection context stored in the context memory. Any received MAC/VID couple is then compared with each couple stored in the CAM memory. When a received MAC/VID couple is identical to a specific stored couple, the context datum is retrieved from the context memory by means of the index stored with the specific couple. As an example, for a maximum number of 512 devices that can be operated in the system, equipment 8 must store 512 couples of 60 bits (48 MAC address bits, 12 VID address bits), to which are added 9 index bits to address the 512 locations in the context memory, that is, a total 35,328 bits. Further, a content-addressable memory conventionally includes a line comparator. In the described example, 512 comparators are necessary and take up a significant surface area, which is not desirable.
To avoid using such a content-addressable memory, it could be devised to directly address the context memory with the received MAC/VID couples. Such a solution however implies the use of a context memory with 260 inputs, which is not a practical implementation.